layui.use(['carousel', 'dropdown', 'form', 'jquery', 'table', 'element'], function () {
  var carousel = layui.carousel
    , form = layui.form
    , dropdown = layui.dropdown
    , $ = layui.$
    , table = layui.table
    , element = layui.element;

  // 时间格式
  Date.prototype.format = function (format) {
    var o = {
      "M+": this.getMonth() + 1, //month
      "d+": this.getDate(), //day
      "H+": this.getHours(), //hour
      "m+": this.getMinutes(), //minute
      "s+": this.getSeconds(), //second
      "q+": Math.floor((this.getMonth() + 3) / 3), //quarter
      "S": this.getMilliseconds() //millisecond
    }

    if (/(y+)/.test(format)) {
      format = format.replace(RegExp.$1, (this.getFullYear() + "").substr(4 - RegExp.$1.length));
    }

    for (var k in o) {
      if (new RegExp("(" + k + ")").test(format)) {
        format = format.replace(RegExp.$1, RegExp.$1.length == 1 ? o[k] : ("00" + o[k]).substr(("" + o[k]).length));
      }
    }
    return format;
  }

  // 表格渲染
  table.render({
    elem: '#order_list'
    , url: '/order/show/'
    , limit: 10 // 每页显示的条数
    , headers: { // 接口的请求头
      'Authorization': localStorage.getItem('Authorization')
    }
    // parseData，我们需要借助这个回调函数将获取的数据解析成table需要的数据格式,根据打印出来的结果，修改return中各参数的值
    , parseData: function (res) { //res 即为原始返回的数据
      console.log(res);
      return {
        "code": res.code, //解析接口状态
        "msg": res.msg, //解析提示文本
        "count": res.data.total, //解析数据长度
        "data": res.data.data //解析数据列表
      };
    }
    // response：我们设置的成功状态码如果是200，则需要修改，如果是0则不用加此处
    , response: {
      statusCode: 200 //规定成功的状态码，默认：0
    }
    , cols: [[
      {field: 'order_no', width: 180, title: '订单'}
      , { //templet：函数转义，通过得到的当前行数据d，拼接自定义模板
        field: 'status', width: 120, title: '状态', sort: true, templet: function (d) {
          let status_list = ['等待支付', '交易成功', '支付失败']
          let status_color = ['#01AAED', '#5FB878', '#FF5722']
          //得到当前行数据，并拼接成自定义模板
          return `<span style="background-color:${status_color[d.status]};padding: 10px;color:white">${status_list[d.status]}</span>`
        }
      }
      , {field: 'money', width: 100, title: '金额', sort: true}
      , {field: 'subject', width: 500, title: '商品描述'}
      , {
        field: 'update_time', title: '时间', minWidth: 150, templet: function (d) {
          //得到当前行数据，并拼接成自定义模板
          return new Date(d.update_time).format("yyyy-MM-dd HH:mm:ss")
        }
      }
    ]]
    , page: true
  });

  // 支付
  aliPay = function (id) {
    $(document).ready(function () {
      $.ajax({
        type: "PUT",
        url: '/order/alipay/',
        headers: {
          'X-CSRFToken': $('input[name="csrfmiddlewaretoken"]').val()
        },
        data: {'id': id},
        success: function (data) {
          console.log(data.data);
          window.open(data.data)
        },
      })
    })
  }
})